package com.xiti.student.base.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotations.*;
import com.baomidou.mybatisplus.enums.FieldFill;
import com.baomidou.mybatisplus.enums.IdType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * im用户表
 * </p>
 *
 * @author tangz
 * @since 2018-09-13
 */
@ApiModel(value = "Jim", description = "Jim用户表")
@TableName("tb_base_jim")
public class Jim implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(name = "id", value = "im用户主键ID", dataType = "Long", notes = "")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(name = "userId", value = "用户id", dataType = "Long", notes = "")
    private Long userId;

    @ApiModelProperty(name = "userName", value = "用户姓名,即im用户姓名", dataType = "String", notes = "")
    private String userName;

    @ApiModelProperty(name = "userPass", value = "im用户密码", dataType = "String", notes = "")
    private String userPass;

    @ApiModelProperty(name = "nickName", value = "用户昵称", dataType = "String", notes = "")
    private String nickName;

    @ApiModelProperty(name = "type", value = "用户类型", dataType = "Integer", notes = "0未知10用户20医生")
    private Integer type;

    @ApiModelProperty(name = "remark", value = "说明", dataType = "String", notes = "")
    private String remark;

    @ApiModelProperty(name = "createdCode", value = "创建者id", dataType = "String", notes = "")
    @TableField(fill = FieldFill.INSERT)
    private String createdCode;

    @ApiModelProperty(name = "createdName", value = "创建者名称", dataType = "String", notes = "")
    @TableField(fill = FieldFill.INSERT)
    private String createdName;

    @ApiModelProperty(name = "createdTime", value = "创建时间", dataType = "Date", notes = "")
    @TableField(fill = FieldFill.INSERT)
    private Date createdTime;

    @ApiModelProperty(name = "lastCode", value = "最后更新者id", dataType = "String", notes = "")
    @TableField(fill = FieldFill.UPDATE)
    private String lastCode;

    @ApiModelProperty(name = "lastName", value = "最后更新者名称", dataType = "String", notes = "")
    @TableField(fill = FieldFill.UPDATE)
    private String lastName;

    @ApiModelProperty(name = "lastTime", value = "最后更新时间", dataType = "Date", notes = "")
    @TableField(fill = FieldFill.UPDATE)
    private Date lastTime;

    @ApiModelProperty(name = "deleteFlag", value = "删除标记0未删除1已删除", dataType = "Integer", notes = "")
    @JSONField(serialize=false)
    @TableLogic
    private Integer deleteFlag;

    @ApiModelProperty(name = "version", value = "版本号", dataType = "Integer", notes = "")
    @JSONField(serialize=false)
    @Version
    private Integer version;



    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getUserPass() {
        return userPass;
    }

    public void setUserPass(String userPass) {
        this.userPass = userPass;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getCreatedCode() {
        return createdCode;
    }

    public void setCreatedCode(String createdCode) {
        this.createdCode = createdCode;
    }

    public String getCreatedName() {
        return createdName;
    }

    public void setCreatedName(String createdName) {
        this.createdName = createdName;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public String getLastCode() {
        return lastCode;
    }

    public void setLastCode(String lastCode) {
        this.lastCode = lastCode;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public Date getLastTime() {
        return lastTime;
    }

    public void setLastTime(Date lastTime) {
        this.lastTime = lastTime;
    }

    public Integer getDeleteFlag() {
        return deleteFlag;
    }

    public void setDeleteFlag(Integer deleteFlag) {
        this.deleteFlag = deleteFlag;
    }

    public Integer getVersion() {
        return version;
    }

    public void setVersion(Integer version) {
        this.version = version;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type=type;
    }
}
